As is known in the art, packet switching networks are used extensively to transmit information from a source node of the network to a destination node of the network. Packets carry the information. A packet switching network utilizes special characters to delimit between packets. Examples of such delimiters are Start of Packet (SOP), End of packet (EOP). Other delimiters may exist to signal an idle state on the network when there are no packets being transferred. Each packet has a source field indicating the address of the source node, a destination field indicating the address of the destination node, a set of other fields that describe characteristics of the packet, and the information field having the information to be transferred. The source and destination address nodes, along with other fields that describe characteristics of the packet in a temporally first section of the packet called the ‘header’. Such header may be protected by a Cyclical Redundancy Check (CRC) to ensure the packet description is intact and uncorrupted. The remainder of the packet is data of variable length; such length may be encoded in the header as an enumerated symbol length; and a subsequent CRC or Error Correction Code. The packets are transferred (i.e., routed) through the network between the source node and the destination node through a series of switches. Previous approaches to packet switched networks have treated packets as indivisible, and thus once a long packet occupied an output of a switch, a low latency packet entering the switch would be required to wait until completion of the long packet before the low latency packet could be transferred through the switch. Switches generally contain packet storage buffers to hold packets that are waiting for outputs of the switch to become free. When such packet storage is provided a switch may exhibit a technique called ‘store and forward’; wherein each packet is stored completely before being sent to a free output. Such switches may also exhibit a technique called ‘cut through’; wherein after reception of the header is complete, and CRC checked, determination of the output may be made and arbitrated for. If such output is free the packet may be immediately forwarded to the output before the end of such packet is completely received. Such switches generally have a maximum packet size that satisfies the application utilizing the network and the storage inside each switch.
As is also known in the art, the network may route different types of packets, such as low latency packets and high bandwidth packets. A low latency packet is a relatively short packet in comparison to the maximum size of the network packets allowed. These short packets represent control information that is used to intercommunicate between nodes. Such packets may have a special field inside the header to indicate that it is a low latency packet. If a packet is labeled low latency then the network may route these with priority over all packets not marked low latency. All other packets are then considered application data and will range from the minimum to the maximum packet size for the network. If a packet is not a low latency packet then it may be considered a high bandwidth packet wherein the total amount of data sent through the network with high bandwidth packets is more important than the latency of such packets; since the application requires maximum bandwidth with respect to latency. Thus, as noted above, previous approaches to packet switched networks have treated packets as indivisible, and thus once a long packet occupied an output of a switch, a low latency packet entering the switch would be required to wait until completion of the long packet before the low latency packet could be transferred through the switch. Thus, as shown in FIG. 1, with a low latency (LL) packet being received at time t during transmission of a high bandwidth packet the LL packet is required wait for complete transmission of the high bandwidth (HB) packet before transmission of the low latency (LL) packet;